package com.ftwj.constant;

import org.springframework.stereotype.Component;

@Component
public class Constant {


    /**
     * @Author Liu_xg
     * @Date 11:35
     * @name 授权码查询
     * @Description 调用该接口查询当前平台所在系统识别码。
     */
    public static final String GET_MACHINE_CODE = "/info/interface/get/machine/code";


    /**
     * @Author Liu_xg
     * @Date 11:35
     * @name 设置无人机信息
     * @Description 上线无人机之前，必须设置无人机信息，否则无人机不能正常上线通信。若要修改推流地址，需调用该接口后，
     * 重新上线无人机。
     */
    public static final String SET_PLAN_INFO = "/interface/setting/plan/info";

    /**
     * @Author Liu_xg
     * @Date 11:35
     * @name 无人机状态查询
     * @Description 无人机上电后实时上报无人机的飞行信息，频率 1Hz，同时该接口信息会实时更新，第三方定时请求该接口以
     * 获取无人机实时飞行信息。
     */
    public static final String GET_PLAN_STATUS = "/interface/status";

    /**
     * @Author Liu_xg
     * @Date 11:35
     * @name 查询已注册无人机信息
     * @Description 查询已注册无人机信息。
     */
    public static final String QUERY_PLAN_ALL = "/info/interface/query/plan/all";


    /**
     * @Author Liu_xg
     * @Date 11:35
     * @name 删除无人机注册信息
     * @Description 删除无人机注册信息。
     */
    public static final String DEL_PLAN_INFO = "/info/interface/del/plan/info";


    /**
     * @Author Liu_xg
     * @Date 11:35
     * @name 云台复位
     * @Description 云台复位重置摄像头各项偏转角度。
     */
    public static final String PTZ_CAMERA_RESET = "/interface/ptzCameraReset";


    /**
     * @Author Liu_xg
     * @Date 11:35
     * @name 云台转向
     * @Description 控制摄像头转向，roll,pitch,yaw 三个参数必填，若只控制某一项或两项，其余参数填写 0。
     */
    public static final String PTZ_RESET = "/interface/ptzReset";


    /**
     * @Author Liu_xg
     * @Date 11:35
     * @name 焦距缩放
     * @Description 摄像头在变焦模式下，控制其焦距倍数。
     */
    public static final String FOCUS_ZOOM = "/interface/focusZoom";

    /**
     * @Author Liu_xg
     * @Date 11:35
     * @name 航线下发
     * @Description 下发无人机实时航线任务指令, 并设置每个航点行为动作。动作类型和参数编码类型通过编号对应设置。
     */
    public static final String START_ROUTE = "/interface/startRoute";


    /**
     * @Author Liu_xg
     * @Date 11:35
     * @name 暂停任务
     * @Description 在无人机执行飞行任务中，可暂停任务，让其无人机悬停。
     */
    public static final String FLIGHT_PAUSE = "/interface/flightPause";


    /**
     * @Author Liu_xg
     * @Date 11:35
     * @name 继续任务
     * @Description 当无人机被暂停任务，可通过调用该接口继续飞行任务。
     */
    public static final String FLIGHT_CONTINUE = "/interface/flightContinue";


    /**
     * @Author Liu_xg
     * @Date 11:35
     * @name 自动返航
     * @Description 通过调用该接口让无人机返回起飞点。
     */
    public static final String AUTO_RETURN = "/interface/autoReturn";

    /**
     * @Author Liu_xg
     * @Date 11:35
     * @name 起飞
     * @Description 开启虚拟摇杆之前，需先起飞无人机，让其上升一定高度。
     */
    public static final String CONTROL_TAKEOFF = "/interface/controlTakeoff";

    /**
     * @Author Liu_xg
     * @Date 11:35
     * @name 降落
     * @Description 当无人机处于降落安全高度后，关闭虚拟摇杆，调用该接口让其无人机降落到地面。
     */
    public static final String CONTROL_LANDING = "/interface/controlLanding";


    /**
     * @Author Liu_xg
     * @Date 11:35
     * @name 获取虚拟摇杆权限
     * @Description 当无人机起飞上升到一定高度，调用该接口获取摇杆权限，会剥夺无人机遥控器权限，
     * 注意此操作危险，需谨慎调用。
     */
    public static final String GET_CONTROL_PERMISSIONS = "/interface/getControlPermissions";


    /**
     * @Author Liu_xg
     * @Date 11:35
     * @name 释放虚拟摇杆权限
     * @Description 释放摇杆权限，归还摇杆权限给无人机控制器
     */
    public static final String RELEASE_CONTROL_PERMISSIONS = "/interface/releaseControlPermissions";


    /**
     * @Author Liu_xg
     * @Date 11:35
     * @name 虚拟摇杆控制
     * @Description 需获取虚拟摇杆权限才可控制无人机动作, 可控制无人机前进、后退、右进、左退、上升、下降和
     * 偏转角度,不同摇杆模式各参数的控制动作不同。
     * 支持中国手，美国手，日本手切换，需配合接口/interface/setting/plan/info 设置无人机信息使
     * 用。
     */
    public static final String JOYSTICK_CONTROL = "/interface/joystickControl";

    /**
     * @Author Liu_xg
     * @Date 11:35
     * @name 喊话器控制
     * @Description 下发喊话内容，并设置音量大小
     */
    public static final String SHOUT_CTRL = "/interface/shoutCtrl";

    /**
     * @Author Liu_xg
     * @Date 11:35
     * @name 喊话器停止
     * @Description 在喊话途中, 调用该接口可停止喊话
     */
    public static final String SHOUT_CTRL_STOP = "/interface/shoutCtrlStop";


    /**
     * @Author Liu_xg
     * @Date 11:35
     * @name 照相
     * @Description 调用该接口，记录载荷照片
     */
    public static final String PHOTO_GRAPH = "/interface/photograph";

    /**
     * @Author Liu_xg
     * @Date 11:35
     * @name 显示模式切换
     * @Description 调用该接口，切换相机模式，即广角、变焦模式。
     */
    public static final String DISPLAY_SWITCH = "/interface/display/switch";

    /**
     * @Author Liu_xg
     * @Date 11:35
     * @name 重启设备（hub)
     * @Description 调用该接口重启设备。
     */
    public static final String REBOOT_HUB = "/interface/reboot/hub";


    /**
     * @Author Liu_xg
     * @Date 11:35
     * @name 自动对焦
     * @Description 摄像头自动对焦图像。
     */
    public static final String AUTO_FOCUS = "/interface/autoFocus";


    /**
     * @Author Liu_xg
     * @Date 11:35
     * @name 相机参数设置
     * @Description 设置相机参数。
     */
    public static final String CAMERA_SETTING = "/interface/camera/setting";


    /**
     * @Author Liu_xg
     * @Date 11:35
     * @name 开始摄像
     * @Description 调用该接口，开始录制载荷视频
     */
    public static final String START_RECORD = "/interface/startRecord";

    /**
     * @Author Liu_xg
     * @Date 11:35
     * @name 结束摄像
     * @Description 调用该接口，结束录制载荷视频
     */
    public static final String STOP_RECORD = "/interface/stopRecord";
}
